package com.chenfan.mcn.model.vo;

import com.chenfan.mcn.enums.DiscountApprovalEnum;
import com.chenfan.mcn.enums.ApprovalStatusEnum;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Objects;

/**
 * @Author liuyang
 * @Date 2021/3/25
 * @Time 10:43
 * @Version V1.0
 **/
@Data
public class DiscountApprovalRelationVO {

    /**
     * 审批单id
     */
    private Long id;

    /**
     * 审批单编号
     */
    private String discountCode;

    /**
     * 优惠类型:0_单笔优惠，1_年度优惠
     */
    private Integer approvalType;

    /**
     * 客户id
     */
    private Long customerId;

    /**
     * 审批状态:0_待提交, 1_审批中, 2_审批通过, 3_审批拒绝, 4_已撤回
     */
    private Integer approvalStatus;

    /**
     * 合同主体(数据字典)
     */
    private String contractSubject;

    /**
     * 时效开始时间
     */
    private String startDate;

    /**
     * 失效结束时间
     */
    private String endDate;

    /**
     * 申请描述
     */
    private String description;

    /**
     * 返点比例(单笔优惠时必填)
     */
    private BigDecimal rebateRate;

    /**
     * 折扣比例(单笔优惠时必填)
     */
    private BigDecimal discountRate;

    /**
     * 是否生效(0-否，1-是)
     */
    private Integer isActive;

    /**
     * 优惠类型名称
     */
    private String approvalTypeName;

    /**
     * 合同主体名称
     */
    private String contractSubjectName;

    public String getStatusName() {
        if (Objects.nonNull(getApprovalStatus())) {
            return ApprovalStatusEnum.getStatusName(getApprovalStatus());
        }
        return null;
    }

    public String getApprovalTypeName() {
        if (Objects.nonNull(getApprovalType())) {
            return DiscountApprovalEnum.getStatusName("approvalType", getApprovalType());
        }
        return null;
    }
}
